import random
from time import sleep

from tool.allure_ import allure_title
from tool.assertion import element_existence, element_info_existence, element_text_existence
from tool.dw import find_elements


def f1(dv):
    allure_title('账号快捷登录')
    '''1、打开账号切换，点击其他的账号，点击确认登录'''
    find_elements(dv, '切换账号1', 'text', '账号快捷登录', '进入账号切换').click()
    find_elements(dv,
                  '//*[@resource-id="com.visteon.txzing.accountcenter:id/change_account_recycler"]/android.view.ViewGroup[2]',
                  'xpath', '账号快捷登录', '点击第二个账号').click()
    find_elements(dv, '确定', 'text', '账号快捷登录', '点击确认小程序快捷登录').click()
    '''断言'''
    return element_existence(dv, '取消', 'text', '账号快捷登录')


def f2(dv):
    allure_title('进行退出登录')
    '''2、点击设置、点击退出登录、点击取消'''
    find_elements(dv, '设置', 'text', '进行退出登录', '点击设置').click()
    find_elements(dv, '退出登录', 'text', '进行退出登录', '点击退出登录').click()
    find_elements(dv, '取消', 'text', '进行退出登录', '点击取消退出登录').click()
    return element_text_existence(dv, '退出登录', 'text', '退出登录', '进行退出登录')


def f5(dv):
    allure_title('进行录音问题反馈')
    '''5、进入问题反馈，点击开始录音，5s内结束录音，重新开始录音，切换问题类别从第一个切到最后一个,然后提交,最后播放语音'''
    find_elements(dv, '问题反馈', 'text', '进行录音问题反馈', '点击问题反馈功能').click()
    record_button_xpath = '//*[@resource-id="com.visteon.txzing.accountcenter:id/feedback_start_record"]'
    find_elements(dv, record_button_xpath, 'xpath', '进行录音问题反馈', '首次点击录音按钮开始录音').click()
    sleep(2)  # 录音2s
    find_elements(dv, record_button_xpath, 'xpath', '进行录音问题反馈', '第二次点击录音按钮结束录音').click()
    find_elements(dv, record_button_xpath, 'xpath', '进行录音问题反馈', '第三次点击录音按钮开始录音').click()
    lb = ['多媒体', '导航', '蓝牙电话', '维保类', '其他', '设置']
    for i in lb:
        dv(text=i).click()
        sleep(1)
    # 录音秒数随机
    sleep(random.randint(5, 10))
    find_elements(dv, record_button_xpath, 'xpath', '进行录音问题反馈', '第四次点击录音按钮结束录音').click()
    find_elements(dv, '提交', 'text', '进行录音问题反馈', '提交录音').click()
    sleep(2)
    '''断言'''
    return element_info_existence(dv,
                                  '//*[@resource-id="com.visteon.txzing.accountcenter:id/mine_feedback_recyclerview"]/android.view.ViewGroup[1]/android.view.ViewGroup[1]',
                                  'xpath', '进行录音问题反馈')
